package com.zzw.service;

import com.zzw.dto.AssignRoleDto;
import com.zzw.entity.Result;
import com.zzw.entity.Role;
import com.zzw.page.Page;

import java.util.List;

/**
 * @Project: warehouse
 * @Description: 角色业务接口
 * @Author: zzw
 */
public interface RoleService {

    // 查询所有角色
    List<Role> findAllRole();

    // 查询用户已分配角色
    List<Role> queryRolesByUserId(Integer userId);

    // 给用户分配角色
    void assignRole(AssignRoleDto assignRoleDto);

    // 分页查询角色
    Page queryRolePage(Page page, Role role);

    // 添加角色
    Result saveRole(Role role);

    // 修改角色状态
    Result updateRoleState(Role role);

    // 查询角色已分配权限
    List<Integer> queryAuthIds(Integer roleId);

    // 删除角色
    Result deleteRole(Integer roleId);

    // 修改角色描述
    Result updateRoleDesc(Role role);
}
